package uiMain.menuconsola;

import gestorHotel.Hotel;
import gestorHotel.habitacion.Categoria;
import gestorHotel.habitacion.Habitacion;
import gestorHotel.habitacion.Tipo;
import gestorHotel.reserva.Reserva;

import java.util.ArrayList;
import java.util.Scanner;

public class OpcionDeMenuModificarReserva extends OpcionDeMenu {

	public void ejecutar() {
		Scanner in = new Scanner(System.in);
		String h = seleccionarHotel();
		
		Hotel hotel = Main.hoteles.get(h);

		System.out.print("Ingrese el código de la reserva: ");
		int codReserva = Integer.parseInt(in.nextLine());
		
		if (!hotel.getReservas().containsKey(codReserva)) {
			System.out.println("Error: La reserva solicitada no existe!");
			return;
		}
		
		Reserva reserva = hotel.getReservas().get(codReserva);
		
		if (confirmarAccion()) {
			Reserva nuevaReserva = new Reserva();

			nuevaReserva.setCodReserva(codReserva);
			
			System.out.print("Ingrese la fecha de entrada: ");
			String fechaEntrada = in.nextLine();
			System.out.print("Ingrese la fecha de reserva: ");
			String fechaReserva = in.nextLine();
			System.out.print("Ingrese el número de noches: ");
			int numNoches = Integer.parseInt(in.nextLine());
			System.out.print("Ingrese el número de personas: ");
			int numPersonas = Integer.parseInt(in.nextLine());
			
			nuevaReserva.setFechaEntrada(fechaEntrada);
			nuevaReserva.setFechaReserva(fechaReserva);
			nuevaReserva.setNumNoches(numNoches);
			nuevaReserva.setNumPersonas(numPersonas);
			
			nuevaReserva.setEstado(reserva.getEstado());
			nuevaReserva.setUsuario(reserva.getUsuario());
			nuevaReserva.setLineas(reserva.getLineas());
			
			nuevaReserva.editar(h);
			System.out.println("La reserva ha sido modificada!");
		}
	}

	public String getDescripcion() {
		return "Modificar reserva.";
	}

}
